package dao;

import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;

import Manager.ManageConnection;
import bean.Pietanza;

public class PietanzaDAO {
	
	ManageConnection mc = null;
	
	private static PietanzaDAO instance = null;

	public PietanzaDAO() {
		mc = ManageConnection.getInstance();
	}
	
	public static PietanzaDAO getInstance() {
		if (instance == null)
			instance = new PietanzaDAO();
		return instance;
	}

	public ArrayList<Pietanza> getPietanze() throws SQLException {
		String query = "select * from pietanza";
		ResultSet rs = mc.getConnection().eseguiQuery(query);
		
		ArrayList<Pietanza> pietanza = new ArrayList<Pietanza>();
		while(rs.next()) {
			pietanza.add(new Pietanza(rs.getInt("id"), rs.getString("descrizione"), rs.getFloat("prezzo"), rs.getBoolean("vegetariano")));
		}
		return pietanza;
		
	}
	
	public boolean insertPietanza(Pietanza pietanza) {
		String query = "insert into pietanza (descrizione, prezzo, vegetariano) values("
		+ "'" + pietanza.getDescrizione() + "', "
		+ pietanza.getPrezzo()+ ", "
		+ pietanza.isVegetariano() +")";
		
		return mc.getConnection().eseguiAggiornamento(query);
	}
	
	public boolean deletePietanza(int id) {
		String query = "delete from pietanza where id="+ id;
		return mc.getConnection().eseguiAggiornamento(query);
	}
	
	public boolean updatePietanza(Pietanza pietanza) {
		String query = "update pietanza set " +
				"descrizione=" + pietanza.getDescrizione() + ", " +
				"prezzo=" + pietanza.getPrezzo() + ", " +
				"vegetariano=" + pietanza.isVegetariano() +
				" where id="+ pietanza.getId();
		return mc.getConnection().eseguiAggiornamento(query);
	}
}
